package ar.edu.caece.compiler.grammar.nonterminals;

import ar.edu.caece.compiler.grammar.NonTerminalSymbol;
import ar.edu.caece.compiler.grammar.terminals.ComaToken;
import ar.edu.caece.compiler.grammar.terminals.DosPuntosToken;
import ar.edu.caece.compiler.grammar.terminals.IdentifierToken;
import ar.edu.caece.compiler.grammar.terminals.IgualToken;

public class FINAL1 extends NonTerminalSymbol implements FINALSYM {

	private ComaToken comaToken;
	private IdentifierToken identifierToken;
	private DosPuntosToken dosPuntosToken;
	private TIPO tipo;
	private IgualToken igualToken;
	private VALOR valor;
	private FINALSYM finalsym;
	
	public FINAL1(ComaToken comaToken, IdentifierToken identifierToken,
			DosPuntosToken dosPuntosToken, TIPO tipo, IgualToken igualToken,
			VALOR valor, FINALSYM finalsym) {
		super();
		this.comaToken = comaToken;
		this.identifierToken = identifierToken;
		this.dosPuntosToken = dosPuntosToken;
		this.tipo = tipo;
		this.igualToken = igualToken;
		this.valor = valor;
		this.finalsym = finalsym;
	}
	
	@Override
	public String getRepresentation() {
		// TODO Auto-generated method stub
				return "{"+this.getClass().getSimpleName()+" -> "+comaToken.getRepresentation()+" "+identifierToken.getRepresentation()+" "+dosPuntosToken.getRepresentation()+" "+tipo.getRepresentation()+" "+igualToken.getRepresentation()+" "+valor.getRepresentation()+" "+finalsym.getRepresentation()+"}";
	}


	public ComaToken getComaToken() {
		return comaToken;
	}


	public IdentifierToken getIdentifierToken() {
		return identifierToken;
	}


	public DosPuntosToken getDosPuntosToken() {
		return dosPuntosToken;
	}


	public TIPO getTipo() {
		return tipo;
	}


	public IgualToken getIgualToken() {
		return igualToken;
	}


	public VALOR getValor() {
		return valor;
	}


	public FINALSYM getFinalsym() {
		return finalsym;
	}

}
